草庐IT

javascript - 在json中插入javascript变量值

全部标签

ruby-on-rails - 为什么 foreman gem 会忽略 PORT 环境变量?

我希望工头gem使用我的开发环境文件中提供的PORT值,而不是使用它自己的值。我的文件设置如下所示:启动工头的bash脚本:foremanstart-edevelopment.envdevelopment.env文件内容:端口=3000Procfile内容web:bundleexecrailsserverthin-p$PORT-e$RAILS_ENV$1开发服务器最终在端口5000上启动。我知道我可以用--p3000启动工头以强制它使用该端口。但这违背了env文件的目的。有什么建议吗? 最佳答案 我知道这是一篇旧帖子,但我花了一段时

Ruby Grape JSON-over-HTTP API,自定义 JSON 表示

我有一个Grape::API的小型原型(prototype)子类作为机架服务,并且正在使用Grape::Entity来呈现我的应用程序的内部对象。我喜欢Grape::EntityDSL,但我很难找到我应该如何超越默认的JSON表示,这对我们的目的来说太轻了。我被要求以“jsend或类似”格式生成输出:http://labs.omniti.com/labs/jsend我完全不确定什么性质的变化最符合Grape框架(我想要一条阻力最小的路径)。我应该创建一个自定义的Grape格式化程序(我不知道该怎么做),新的机架中间件(我已经这样做是为了通过SysLog记录API输入/输出-但格式看起来

ruby-on-rails - 带有 Devise 的 JSON Web token

我希望这不算是一个自以为是的问题。我只需要指出正确的方向。我正在修改Devisegem以完全使用JSON。到目前为止,我在注册、确认、重新确认、锁定方面没有遇到任何问题。然而,在使用登录时,我深入挖掘并了解到默认的Devise登录策略使用Warden,因为它与session和Rack身份验证。我理解JWT本身包含所有信息,不需要session。因此,如果我剥离所有内容的默认Devise策略并简单地在成功时返回一个JWT并在错误时返回一个错误,这是否是正确的方法?我错过了什么吗? 最佳答案 为了将JWT与设计一起使用,我建议不要使用猴

ruby-on-rails - 呈现传递局部变量的模板时出现问题

我正在运行RubyonRails3,我想呈现一个传递局部变量的模板(show.html.erb)。在RAILS_ROOT/views/users/show.html.erb我有Name:Surname:我还有一个页面Controller来处理页面,在application_controller.rb中有一个@current_user的实例。一个页面叫做user,所以在RAILS_ROOT/views/pages/user.html.erb我有"users/show",:locals=>{:user=>@current_user}%>上面的代码不起作用(我得到这个错误:RuntimeEr

Ruby 对象字面量(ala javascript)

在ruby中你可以去a={}a['a']=82a['b']='foo'putsa['a']#82我希望我可以使用点符号,例如javascript。将a.a#82有没有办法在ruby​​中构建对象文字并使用点表示法访问它们? 最佳答案 您可以创建一个Struct.A=Struct.new(:a,:b)a=A.new(82,'foo')putsa.a#=>82编辑:你甚至可以做到a={}a['a']=82a['b']='foo'Struct.new(*a.keys).new(*a.values)

ruby - 从 Rake 获取 Ruby 环境变量

我有一个Rakefile,其中包含部署或构建应用程序的任务。此Rakefile用于生产和开发。我希望build任务知道环境是什么。当我运行它时,可以在不向任务传递参数的情况下完成吗?可以用环境变量来完成吗?在开发中,我需要任务看起来像这样:task:build=>:cleandocompasscompile-edevelopmentjekyllend在生产中,像这样:task:build=>:cleandocompasscompile-eproductionjekyllend 最佳答案 是的,您可以使用环境变量。这是框架实现:tas

ruby - VIM block 状插入

我想在VIM(ruby注释)中选定的文本block的开头插入一个散列。我在可视模式下选择了行,但如何对所有行执行相同的操作? 最佳答案 您有两个主要选择:在block视觉模式下选择(ctrl-v),然后使用I沿整个block的左侧插入相同的东西。同样A追加;见blockwiseoperators.在正常视觉(v)或视觉线条(V)模式下选择线条,然后对所有线条运行相同的命令,例如s/^/#/或normalI#.打字:当您有视觉选择时,会自动使用视觉选择作为行范围(由'表示)。 关于ruby

ruby-on-rails - 为什么我不能解析保存到 Ruby 变量中的日期字符串?

我需要在我的Rails应用程序中运行以下代码:ActiveSupport::TimeZone["CentralTime(US&Canada)"].parse(game.date).utc.to_date.strftime("%_m/%d")[1..-1]游戏在哪里@games.eachdo|game|但这不起作用,我收到错误,TypeError:没有将ActiveSupport::TimeWithZone隐式转换为String。但是,我可以运行:ActiveSupport::TimeZone["CentralTime(US&Canada)"].parse("2014-04-1112am

ruby-on-rails - 如何在 Rails 的 VIews 模板中创建和使用变量?

我对ruby​​和rails还是个新手,我想创建一个变量,这样我就可以在View模板中反复使用它。例如,我现在的代码是HomePageWelcometomyHomePage现在我想将这个“主页”设为变量或符号,这样我就可以只使用该变量/符号,而不是一遍又一遍地输入字符串,该怎么做?谢谢 最佳答案 当我第一次读到你的问题时,我以为你在问this,但我意识到这是不同的。MichaelHartl的惊人Ruby-on-RailsTutorial演示了我最喜欢的执行此操作的方法,即创建一个实例变量,该变量完全按照您想要的方式在布局中引用。ra

ruby - 创建一个人类可读的列表,在 ruby​​ 列表的最后一个元素之前插入 "and"

如何将列表变成逗号分隔的字符串,并在数组中的最后一个元素之前加上“and”?像这样:list1=['a','b','c']然后把它变成这样:=>"a,b,andc"我记得ruby​​有一个方法可以做到这一点。然而我已经搜索过了,并没有找到它。感谢您的帮助。 最佳答案 尝试:[list[0...-1].join(","),list.last].join(",and")。编辑:Rails有您可能正在寻找的方法,称为to_sentence.如果您没有Rails或不想依赖Rails,请打开Array类并包含上述方法,例如:classArra